In software development, a developer can use breakpoints to pause or halt the execution of an application program to assist them in the debugging of the application program code. A developer can place software breakpoints at strategic locations throughout the application program code. The developer can select locations where halting program execution may be beneficial for debugging purposes. These locations may also be selected as locations within the application code where halting the code will not adversely affect the system performance. Once the breakpoint is triggered and the program halts, the developer can access the current state of the program environment to determine if the program is functioning as expected.